集合
一、什么是集合
- 集合也是Python内置的一个数据类型,可以存储多个元素的容器
- 无序
- 不允许有重复的元素
- 可变类型
- 也是使用{}来表示的 (集合是一种特殊的字典 kv是同一个)eg: s = {1,2,3}
- 不支持下标访问
- 不支持切片操作
二、集合的创建
- 使用{}创建
1 | s = {} # 创建的不是空集合,而是空字典 |
- 使用工厂函数
1 | s = set() # 空集合 |
三、集合的基本操作
1、添加元素
- 基本形式:
s.add(x)
- 作用:将元素x添加到集合s中,如果x已经存在,则什么都不做
1 | s = set() |
- 基本形式:
s.update(iterable)
- 作用:使用可迭代对象来更新集合s
1 | s.update({3,4}) |
2、删除元素
- 基本形式:
s.remove(x)
- 作用:移除集合s中的x元素,如果元素不存在,则报错
1 | s = {1, 2, 3, 4} |
- 基本形式:
s.discard(x)
- 作用:移除集合s中的x元素,如果元素不存在,则什么都不做 不报错
1 | s = {1, 2, 3, 4} |
- 基本形式:
s.pop()
- 作用:随机移除并返回一个元素
1 | s = {'B','A','T'} |
3、清空元素
- 基本形式:
s.clear()
- 作用:清空集合中的元素
1 | s = {'B','A','T'} |
4、判断元素是否存在
- 基本形式:
x in s 或 x not in s
1 | s = {'B','A','T'} |
5、拷贝集合
- 基本形式:
s2 = s1.copy()
- 作用:拷贝出一个集合 – 浅拷贝
1 | s1 = {'B','A','T'} |
6、子集和超集
1 | s1 = {1,2} |
四、交集、并集、差集…
1 | s1 = {1,2,3} |
五、不可变集合
1 | # 关键字: frozenset |